Skip to content

docs: auto-generated, CI-gated kernel × platform support matrix#716

Merged
michalharakal merged 1 commit into
developfrom
feature/708-phase6-kernel-matrix
Jun 8, 2026
Merged

docs: auto-generated, CI-gated kernel × platform support matrix#716
michalharakal merged 1 commit into
developfrom
feature/708-phase6-kernel-matrix

Conversation

@michalharakal

Copy link
Copy Markdown
Contributor

Phase 6 of the Native-parity quantized-kernel work (follows the merged #711/#715).

What

  • KernelSupportMatrixTest (skainet-backend-native-cpu jvmTest — the one module whose test classpath sees all three providers: Scalar, Panama-Vector, Native-FFM). It renders the kernel × platform matrix and gates drift in the scalar floor: the all-platform baseline coverage is auto-derived from ScalarKernelProvider.supports("matmul", …), so adding/removing a scalar packed kernel without updating the docs fails the test (it runs under java-tests in CI). The SIMD/native tiers (whose isAvailable() is environment-gated) are declared with the source-set→targets map — the single place to edit when a provider gains a kernel.
  • docs/kernel-support-matrix.md — the rendered matrix, committed and cross-linked with the eager backends & kernels mindmap.

Current matrix

format JVM Android Native·linux Native·apple JS/WASM
FP32/BF16/Q8_0/Q4_0/Q4_K native-ffm panama-vector scalar scalar scalar
Q6_K scalar scalar scalar scalar scalar
Q5_1 / Q5_0 panama-vector panama-vector scalar scalar scalar

(Scalar floor covers all 8 formats on every target — the Native-parity outcome of this work; Q5_K/Q2_K/Q3_K/IQ4 remain dequant-to-FP32 only.)

Why this approach

A full build-logic/Antora generation pipeline was the heavier option; the availability-probing of the Panama/native providers (JDK incubator module / loaded .so) makes a pure-registry capability probe machine-dependent. This test-based generator keeps the load-bearing axis (what runs on Native = the scalar floor) auto-synced and CI-gated, renders the full matrix to build/kernel-support-matrix.md + stdout for refresh, and avoids env-flaky assertions.

🤖 Generated with Claude Code

Phase 6 of the Native-parity kernel work. Adds KernelSupportMatrixTest
(skainet-backend-native-cpu jvmTest, sees all three providers) that renders the
kernel × platform matrix and gates drift in the scalar floor: the all-platform
baseline coverage is auto-derived from ScalarKernelProvider.supports(...), so
adding/removing a scalar packed kernel without updating the docs fails the test
(runs under java-tests in CI). The SIMD/native tiers (env-availability-gated) are
declared with the source-set→targets map.

The rendered matrix is committed at docs/kernel-support-matrix.md and cross-linked
with the eager backends & kernels mindmap. Current state: scalar floor covers all
8 formats on every target; Panama adds Q5/Q4_K SIMD on JVM/Android; native-FFM
adds FP32/BF16/Q8_0/Q4_0/Q4_K on JVM.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

📖 Documentation Preview

The documentation has been built successfully for this PR.

Generated Files:

  • Operator documentation: docs/modules/operators/_generated_/
  • JSON schema output: operators.json

Artifacts:

  • Download the documentation-preview-716 artifact to view the complete documentation locally.

This comment will be updated automatically when the PR is updated.

@michalharakal michalharakal merged commit 0a2d6fa into develop Jun 8, 2026
11 checks passed
@michalharakal michalharakal deleted the feature/708-phase6-kernel-matrix branch June 8, 2026 12:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant